// pages/home/home.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    active: 0,
    homeType: [],
    // tabType为 0 是模块化页面 对应接口 GetClassPageLayout
    tabType_0: [],
    //  tabType为 6、9 是 漫画列表页 对应接口GetClassPageSixComics，
    tabType_6: [],
    tabType_9: [],
    //  tabType为 12、19 是 男女频道 对应接口GetClassPageLayout，可获取男女频道下二级分类。
    tabType_19: [],
    // 首页分栏热门、有声漫、正能量
    hotLayout: [],
    ysmLayout: [],
    znlLayout: [],
    // 首页分栏热门里面type为:
    //  0是轮播图对应GetClassPageHomeBanner，
    hotLayout_banner: [],
    // 3是常规布局对应GetClassPageSixComics，
    hotLayout_sixComics: [],
    // 7是潜力新作对应GetClassPageComicsRank、
    hotLayout_comicsRank: [],
    // 8是高能单话对应GetClassPageHighEnergyEp。
    hotLayout_highEnergyEp: [],
    // 通过 hotLayout_banner 请求后的banner 数据
    banner_data: [],
    // 通过 hotLayout_sixComics 请求后的sixComics 数据
    sixComics_data: [],
    //  0是轮播图对应GetClassPageHomeBanner，
    ysmLayout_banner: [],
    // 3是常规布局对应GetClassPageSixComics，
    ysmLayout_sixComics: [],
    // 通过 ysmLayout_banner 请求后的banner 数据
    ysmbanner_data: [],
    // 通过 ysmLayout_sixComics 请求后的sixComics 数据
    ysmsixComics_data: [],

    //  0是轮播图对应GetClassPageHomeBanner，
    znlLayout_banner: [],
    // 3是常规布局对应GetClassPageSixComics，
    znlLayout_sixComics: [],
    // 通过 znlLayout_banner 请求后的banner 数据
    znlbanner_data: [],
    // 通过 znlLayout_sixComics 请求后的sixComics 数据
    znlsixComics_data: [],
    // 推荐页面显示的内容
    feeds: [],
    // 推荐页面默认显示第一页
    tjnum: 1,
    // 女生页面显示的数据二维数组
    womandatas: [],
    // 男生页面显示的数据二维数组
    mandatas: []


  },
  // onChange(event) {
  //   wx.showToast({
  //     // title: `切换到标签 ${event.detail.name}`,
  //     // icon: 'none',
  //   });
  //   // console.log(event);
  // },

  // 点击查看全部
  ckqbTap(e) {
    const data = JSON.stringify(e.target.dataset)
    this.pageRouter.navigateTo({
      url: '../cardlist/cardlist?data=' + encodeURIComponent(data),
    });
    // console.log(data)
    //在将数据通过以下语法进行传送
    // wx.navigateTo({
    //   url: '../add_page/add_page?data='+encodeURIComponent(data),
    // })


  },
  // 点击轮播图跳转
  todetail(e) {
    if (e.currentTarget.dataset.type === 2) {
      let id = e.currentTarget.dataset.id;
      console.log("w jinlail");
      wx.request({
        url: 'https://apis.netstart.cn/bcomic/ComicDetail',
        data: {
          'comicId': id
        },
        success: (res) => {
          console.log(res);
          let dt = res.data.data;
          const data = JSON.stringify(dt)
          this.pageRouter.navigateTo({
            url: '../../pages/readintro/readintro?data=' + encodeURIComponent(data),
          });
        }
      })

    } else if (e.currentTarget.dataset.type === 3) {
      // outerChain为url链接
      let outerChain = e.currentTarget.dataset.value;
      console.log(outerChain);
      wx.navigateTo({
        url: '../../pages/outer/outer?src=' + encodeURIComponent(outerChain),
      })
    }


  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    //1.请求首页导航栏数据
    wx.request({
      url: 'https://apis.netstart.cn/bcomic/GetClassPageAllTabs',
      success: (res) => {
        console.log("我我我我");
        console.log(res);

        if (res.data.code=== 0) {


          // 设置首页导航栏数据


          let type = res.data.data.home_type.filter((o) => o.name != "等就免费");
          this.setData({
            homeType: type
          });
          // console.log( this.data.homeType);
          // 2.处理各导航栏数据,根据tab_type的不同,需要通过不同id请求不同的接口
          //2.1 对homeType进行过滤处理,将请求的id与name结果储存在对应的tabType_数组内
          let that = this;
          const tabType_0 = [];
          const tabType_6 = [];
          const tabType_9 = [];
          const tabType_19 = [];
          this.data.homeType.filter(function (item, index) {
            // let o = {
            //   name: item.name,
            //   id: item.id
            // }

            if (item.tab_type === 0) {
              tabType_0.push(item);
              that.setData({
                tabType_0: tabType_0
              })
            } else if (item.tab_type === 6) {
              tabType_6.push(item);
              that.setData({
                tabType_6: tabType_6
              })
            } else if (item.tab_type === 9) {
              tabType_9.push(item);
              that.setData({
                tabType_9: tabType_9
              })
            } else if (item.tab_type === 19) {
              tabType_19.push(item);
              that.setData({
                tabType_19: tabType_19
              })
            }
          })
          console.log(this.data.tabType_0);

          //2.2 请求首页各栏目内容的数据
          for (let i = 0; i < this.data.tabType_0.length; i++) {
            let item = this.data.tabType_0[i]
            wx.request({
              url: 'https://apis.netstart.cn/bcomic/GetClassPageLayout',
              data: {
                "tabId": item.id
              },
              success: (res) => {
                if (res.statusCode === 200) {

                  console.log(item);
                  if (item.name === "热门") {
                    this.setData({
                      hotLayout: res.data.data.layout
                    });
                    //  3.1 根据type的不同处理数据,过滤hotLayout
                    const arr_banner = [];
                    const arr_sixComics = [];
                    const arr_comicsRank = [];
                    const arr_highEnergyEp = [];
                    this.data.hotLayout.filter(
                      function (item) {
                        if (item.type === 0) {
                          arr_banner.push(item);
                          that.setData({
                            hotLayout_banner: arr_banner
                          })
                        } else if (item.type === 3) {
                          arr_sixComics.push(item);
                          that.setData({
                            hotLayout_sixComics: arr_sixComics
                          })
                        } else if (item.type === 7) {
                          arr_comicsRank.push(item);
                          that.setData({
                            hotLayout_comicsRank: arr_comicsRank
                          })
                        } else if (item.type === 8) {
                          arr_highEnergyEp.push(item);
                          that.setData({
                            hotLayout_highEnergyEp: arr_highEnergyEp
                          })

                        }
                      }
                    );
                    //  3.2 获取banner数据
                    // console.log(this.data.hotLayout_banner);
                    wx.request({
                      url: 'https://apis.netstart.cn/bcomic/GetClassPageHomeBanner',
                      data: {
                        "id": this.data.hotLayout_banner[0].id
                      },
                      success: (res) => {
                        console.log(res);
                        var bn = res.data.data.banner.map(function (item) {
                          let id = Number(item.jump_url.substr(19, 5))
                          return {
                            ...item,
                            comic_id: id
                          }
                        });
                        this.setData({
                          banner_data: bn
                        })


                      }
                    })
                    //  3.3 获取hotLayout_sixComics数据
                    var arr = []
                    this.data.hotLayout_sixComics.forEach(function (item, index) {
                      wx.request({
                        url: 'https://apis.netstart.cn/bcomic/GetClassPageSixComics',
                        data: {
                          "id": item.id,
                          "pageNum": "1",
                          "pageSize": "6",
                          "isAll": "1"
                        },
                        success: (res) => {
                          if (res.statusCode === 200) {
                            arr[index] = res.data.data.roll_six_comics
                            that.setData({
                              sixComics_data: arr

                            });

                          }


                        }
                      })

                    });

                  } else if (item.name === "有声漫") {
                    this.setData({
                      ysmLayout: res.data.data.layout
                    });
                    //  4.1 根据type的不同处理数据,过滤ysmLayout
                    // type有0,1,3,banner0 列表是3 ,1 是推广,暂时不处理
                    const arrysm_banner = [];
                    const arrysm_sixComics = [];
                    this.data.ysmLayout.filter(
                      function (item) {
                        if (item.type === 0) {
                          arrysm_banner.push(item);
                          that.setData({
                            ysmLayout_banner: arrysm_banner
                          })
                        } else if (item.type === 3) {
                          if (item.name != "潜力新作") {
                            arrysm_sixComics.push(item);
                          }
                          that.setData({
                            ysmLayout_sixComics: arrysm_sixComics
                          })
                        }
                      }
                    );
                    //  4.2 获取banner数据
                    wx.request({
                      url: 'https://apis.netstart.cn/bcomic/GetClassPageHomeBanner',
                      data: {
                        "id": this.data.ysmLayout_banner[0].id
                      },
                      success: (res) => {
                        if (res.statusCode === 200) {
                          var bn = res.data.data.banner.map(function (item) {
                            let id = Number(item.jump_url.substr(19, 5))
                            return {
                              ...item,
                              comic_id: id
                            }
                          });
                          this.setData({
                            ysmbanner_data: bn
                          });

                        }





                      }
                    })
                    //  4.3 获取hotLayout_sixComics数据

                    var arr = []
                    this.data.ysmLayout_sixComics.forEach(function (item, index) {

                      wx.request({
                        url: 'https://apis.netstart.cn/bcomic/GetClassPageSixComics',
                        data: {
                          "id": item.id,
                          "pageNum": "1",
                          "pageSize": "6",
                          "isAll": "1"
                        },
                        success: (res) => {
                          if (res.statusCode === 200) {
                            arr[index] = res.data.data.roll_six_comics
                            that.setData({
                              ysmsixComics_data: arr

                            });

                          }


                        }
                      })

                    });




                  } else if (item.name === "正能量") {
                    this.setData({
                      znlLayout: res.data.data.layout
                    });

                    //  5.1 根据type的不同处理数据,过滤znlLayout
                    // type有0,1,3,banner0 列表是3 ,1 是白衣,暂时不处理
                    const arrznl_banner = [];
                    const arrznl_sixComics = [];
                    this.data.znlLayout.filter(
                      function (item) {
                        if (item.type === 0) {
                          arrznl_banner.push(item);
                          that.setData({
                            znlLayout_banner: arrznl_banner
                          })
                        } else if (item.type === 3) {

                          arrznl_sixComics.push(item);

                          that.setData({
                            znlLayout_sixComics: arrznl_sixComics
                          })
                        }
                      }
                    );
                    //  5.2 获取banner数据
                    wx.request({
                      url: 'https://apis.netstart.cn/bcomic/GetClassPageHomeBanner',
                      data: {
                        "id": this.data.znlLayout_banner[0].id
                      },
                      success: (res) => {
                        var bn = res.data.data.banner.map(function (item) {
                          let id = Number(item.jump_url.substr(19, 5))
                          return {
                            ...item,
                            comic_id: id
                          }
                        });
                        this.setData({
                          znlbanner_data: bn
                        })


                      }
                    })
                    //  5.3 获取hotLayout_sixComics数据

                    var arr = []
                    this.data.znlLayout_sixComics.forEach(function (item, index) {

                      wx.request({
                        url: 'https://apis.netstart.cn/bcomic/GetClassPageSixComics',
                        data: {
                          "id": item.id,
                          "pageNum": "1",
                          "pageSize": "6",
                          "isAll": "1"
                        },
                        success: (res) => {
                          arr[index] = res.data.data.roll_six_comics
                          that.setData({
                            znlsixComics_data: arr

                          });

                        }
                      })

                    });

                  }


                }
              }


            });

          }

          // 2.3 请求推荐页面的数据
          //2.3.1推荐banner
          wx.request({
            url: 'https://apis.netstart.cn/bcomic/Banner',
            success: (res) => {
              console.log(res);
              console.log("请求离开");
              var bn = res.data.data.map(function (item) {
                let id = Number(item.jump_value.substr(19, 5))
                return {
                  ...item,
                  comic_id: id
                }
              });
              this.setData({
                tjbannerData: bn
              })
            }
          })
          //2.3.2 列表数据
          wx.request({
            url: 'https://apis.netstart.cn/bcomic/HomeFeed',
            success: (res) => {
              console.log("res");
              console.log(res);
              this.setData({
                feeds: res.data.data.feeds
              });

            }

          })
          // 2.4 请求女生页面的数据
          // 2.4.1 先请求总女生数据
          wx.request({
            url: 'https://apis.netstart.cn/bcomic/GetClassPageLayout?tabId=333',
            success: (res) => {
              if (res.statusCode === 200) {
                this.setData({
                  woman: res.data.data.layout
                });
                // 2.4.2请求成功后处理二级数据
                this.data.woman.forEach((item) => {
                  wx.request({
                    url: 'https://apis.netstart.cn/bcomic/GetHomeSecondaryComics',
                    data: {
                      "moduleId": item.id,
                      "pageNum": 1,
                      "pageSize": 10
                    },
                    success: (res) => {
                      if (res.statusCode === 200) {
                        let o = {
                          name: item.name,
                          data: res.data.data.comics
                        };
                        let arr = this.data.womandatas;
                        arr.push(o)
                        this.setData({
                          womandatas: arr
                        });

                      }

                    }

                  })
                })
              }


            }
          })
          // 2.5 请求男生页面的数据
          wx.request({
            url: 'https://apis.netstart.cn/bcomic/GetClassPageLayout?tabId=331',
            success: (res) => {
              if (res.statusCode === 200) {
                this.setData({
                  man: res.data.data.layout
                });
                // 2.4.2请求成功后处理二级数据
                this.data.man.forEach((item) => {
                  wx.request({
                    url: 'https://apis.netstart.cn/bcomic/GetHomeSecondaryComics',
                    data: {
                      "moduleId": item.id,
                      "pageNum": 1,
                      "pageSize": 10
                    },
                    success: (res) => {
                      let o = {
                        name: item.name,
                        data: res.data.data.comics
                      };
                      let arr = this.data.mandatas;
                      arr.push(o)
                      this.setData({
                        mandatas: arr
                      });

                    }

                  })

                });

              }

            }
          })
        }
      }
    });


  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {


  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    // 页面触底了,需要再次请求推荐栏的数据

    console.log("我冒出第 了");


    // 2.3 请求推荐页面的数据
    wx.request({
      url: 'https://apis.netstart.cn/bcomic/HomeFeed',
      data: {
        "pageNum": this.data.tjnum++,
        "pageSize": 20
      },
      success: (res) => {
        let arr = res.data.data.feeds;
        this.setData({
          feeds: this.data.feeds.concat(arr)
        })

      }

    })




  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})